
/**
 * @file ReadRinexIndexFile.hpp
 * This class synchronizes rinex observation data streams.
 *
 * shjzhang, 2019/04/30, synchronize the data with time
 */

#ifndef GPSTK_ReadRinexIndexFile_HPP
#define GPSTK_ReadRinexIndexFile_HPP

#include <iostream>
#include <string>
#include <list>
#include <map>
#include "DataStructures.hpp"

namespace gpstk
{

      /// @ingroup DataStructures
      //@{
    class ReadRinexIndexFile
    {
    public:

         /// Default constructor
        ReadRinexIndexFile()
        {}


         /// Default destructor
        virtual ~ReadRinexIndexFile()
        {}


         /// Add a rinex obs file to the network
         /// @obsFile   Rinex observation file name
        bool addRinexObsFile(const std::string& obsFile);


         /// set rinex index file, which store all the rinex file names 
         /// @rnxIndexFile   Rinex index file name 
        bool setRinexIndexFile(const std::string& rnxIndexFile);


         /// set rinex index file, which store all the rinex file names 
         /// @rnxIndexFile   Rinex index file name 
        std::map<SourceID, std::string> getSourceFileData()
        {
            return sourceRinexFileData;
        };


    protected:


        std::map<SourceID, std::string> sourceRinexFileData;

    }; // End of class 'ReadRinexIndexFile'

      //@}


}  // End of namespace gpstk

#endif   // ReadRinexIndexFile
